Automatic Mutual Exclusion and Atomicity Checks

نویسنده

  • Martín Abadi
چکیده

This paper provides an introduction to the Automatic Mutual Exclusion (AME) programming model and to its formal study, through the AME calculus. AME resembles cooperative multithreading; in the intended implementations, however, software transactional memory supports the concurrent execution of atomic fragments. This paper also studies simple dynamic and static mechanisms for atomicity checks in AME.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Compiling shared variable programs into CSP

We present a compiler from a simple shared variable language into CSP. This allows the application of CSP-based tools such as FDR when analysing programs written in the other language. The translation into CSP makes it easy to be flexible about the semantics of execution, most particularly the amount of atomicity that is enforced. We examine ways available to translate specifications we may wis...

متن کامل

Fast and Scalable Mutual Exclusion

We present an N -process algorithm for mutual exclusion under read/write atomicity that has O(1) time complexity in the absence of contention and (logN) time complexity under contention, where \time" is measured by counting remote memory references. This is the rst such algorithm to achieve these time complexity bounds. Our algorithm is obtained by combining a new \fast-path" mechanism with an ...

متن کامل

Coqa: Concurrent Objects with Quantized Atomicity

This paper introduces a new language model, Coqa, for deeply embedding concurrent programming into objects. Every program written in our language has built-in the desirable behaviors of atomicity, mutual exclusion, and race freedom. A key property of our model is the notion of quantized atomicity: all concurrent program executions can be viewed as being divided into quantum regions of atomic ex...

متن کامل

Relativistic Causal Ordering - A Memory Model for Scalable Concurrent Data Structures

High-performance programs and systems require concurrency to take full advantage of available hardware. However, the available concurrent programming models force a difficult choice, between simple models such as mutual exclusion that produce little to no concurrency, or complex models such as Read-Copy Update that can scale to all available resources. Simple concurrent programming models enfor...

متن کامل

Cs 242: Operating Systems Transactions 2 Transaction Models

In our discussion of mutual exclusion so far, we have considered atomic access to a single object. What if we wish to atomically access multiple objects. For instance, what if we wish to atomically remove an item from the input buffer and put it in the echo buffer? The high-level constructs such as monitors and path expressions do not give users of shared objects flexibility in defining the uni...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008